//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright 2006 CORE Solutions Limited
// All rights reserved.
// PROPRIETARY AND CONFIDENTIAL INFORMATION.
// Use is subject to license terms.
//
// FUNCTION ID      :   BODY
// AUTHOR           :   Ric Yik 
// DATE CREATE      :   2006/06/12
// DESCRIPTION      :   a VO file for the function, BODY
//                  :   
//                  :   
//                  :   
//
// MODIFICATION HISTORY:
// DATE         AUTHOR          VERSION NO.         COMMENT
// -----------  --------------  ------------------  -------------------
// 2006/06/12   Ric Yik         1.0                 source is generated.
//
//
//
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

package com.erp.app.common.itemTask.vo;

import java.sql.Timestamp;

import com.erp.app.common.itemTask.pk.ItemTaskApprovalPk;
import com.erp.framework.model.pk.SimpleSearchMaintStylePk;
import com.erp.framework.model.vo.SimpleSearchMaintStyleVo;
import com.erp.framework.types.CustomBigInteger;
import com.erp.framework.types.CustomSqlDate;

/**
* <p>A <strong>VO</strong>(Value Object) is a JavaBean which provides property
* getter and setter methods for all of the bean properties, and implements
* <code>Serializable</code>, as required by the JavaBean specification
* The main purpose for this class is to store the data retrieved from the database,
* and the converted data from the web browsers.
*
* @author          Ric Yik 
* @version 1.0     2006/06/12
* @since           FrameWork 1.0
*
*/
public class ItemTaskApprovalVo extends SimpleSearchMaintStyleVo {

	//DB Table Name: T_ITEM_TASK_APPROVAL

	//PK Attributes
	private String companyCode;                                                                        //DB Column Name: COMPANY_CODE
	private String documentNo;                                                                         //DB Column Name: DOCUMENT_NO
	private String documentType;                                                                       //DB Column Name: DOCUMENT_TYPE
    private CustomBigInteger approvalTaskLineNo;                                                                   //DB Column Name: LINE_NO
	private CustomBigInteger approvalLineNo;                                                           //DB Column Name: APPROVAL_LINE_NO

	//Other Attributes
	private String approvalStatus;                                                                     //DB Column Name: STATUS
	private CustomSqlDate approvalCompleteDate;                                                        //DB Column Name: COMPLETE_DATE
	private String approvalRemarks;                                                                    //DB Column Name: REMARKS
	private String approvalDcInd;                                                                      //DB Column Name: DC_IND
	private CustomSqlDate approvalDcDate;                                                              //DB Column Name: DC_DATE
	private String createUser;                                                                         //DB Column Name: CREATE_USER
	private Timestamp createDate;                                                                      //DB Column Name: CREATE_DATE
	private String updateUser;                                                                         //DB Column Name: UPDATE_USER
	private Timestamp updateDate;                                                                      //DB Column Name: UPDATE_DATE

	/**
	* Stores the detail child names by the fully-qualified java class path.
	*
	* @author     Ric Yik 
	* @since      Framework 1.0
	*/
	protected  void setChildTypesName() {
		//this.childTypesName=new String[2];
		//this.childTypesName[0]="com.erp.app.form.beans.FormApprovalListVo";
		//this.childTypesName[1]="com.erp.app.form.beans.FormAttachmentVo";
	}

	/**
	* Stores the table schema name by the fully-qualified java class path.
	*
	* @author     Ric Yik 
	* @since      Framework 1.0
	*/
	protected void setTableSchemaName() {
		this.tableSchemaName="com.erp.app.setup.body.schema.ItemTaskApprovalSchema";
	}

	/**
	* Stores the detail child table schema names by the fully-qualified java class path.
	*
	* @author     Ric Yik 
	* @since      Framework 1.0
	*/
	protected  void setChildTableSchemaNames() {
		//this.childTableSchemaNames=new String[2];
		//this.childTableSchemaNames[0]="com.erp.app.form.beans.FormApprovalListSchema";
		//this.childTableSchemaNames[1]="com.erp.app.form.beans.FormAttachmentSchema";
	}

	/**
	* Stores the DAO name by the fully-qualified java class path.
	*
	* @author     Ric Yik 
	* @since      Framework 1.0
	*/
	protected void setDaoName() {
		this.daoName="com.erp.app.setup.body.dao.ItemTaskApprovalDao";
	}

	/**
	* Returns the primary key for this class.
	* @return      primary key of this class
	*
	* @author     Ric Yik 
	* @since      Framework 1.0
	*/
	public SimpleSearchMaintStylePk getSearchMaintStylePk() {
		return new ItemTaskApprovalPk(this.companyCode, this.documentNo, this.documentType, this.approvalTaskLineNo, this.approvalLineNo);
	}

	/**
	* Converts to a string representing the data in this object.
	* A new <code>String</code> object is allocated and initialized to 
	* contain the character sequence currently represented by this 
	* object. This <code>String</code> is then returned. Subsequent 
	* changes to this object do not affect the contents of the 
	* <code>String</code>. 
	*
	* @return     a string representation of the object.
	* @see        java.lang.Object#toString()
	* @author     Ric Yik 
	* @since      Framework 1.0
	*/
	public String toString() {
		String pkStr = "PK: {companyCode = " + this.companyCode
			+ "\n, documentNo = " + this.documentNo
			+ "\n, documentType = " + this.documentType
            + "\n, lineNo = " + this.approvalTaskLineNo
			+ "\n, approvalLineNo = " + this.approvalLineNo + "}\n";

		String colStr = "COL: {approvalStatus = " + this.approvalStatus
			+ "\n, approvalCompleteDate = " + this.approvalCompleteDate
			+ "\n, approvalRemarks = " + this.approvalRemarks
			+ "\n, approvalDcInd = " + this.approvalDcInd
			+ "\n, approvalDcDate = " + this.approvalDcDate
			+ "\n, createUser = " + this.createUser
			+ "\n, createDate = " + this.createDate
			+ "\n, updateUser = " + this.updateUser
			+ "\n, updateDate = " + this.updateDate + "}\n";

		return "ItemTaskApprovalVo.toString() is:\n" + pkStr + colStr;
	}

	////////////////////////////////////////////////////////////////////////////////
	//Generated Accessors (get/set methods)
	////////////////////////////////////////////////////////////////////////////////

	public String getCompanyCode() {
		return this.companyCode;
	}

	public String getDocumentNo() {
		return this.documentNo;
	}

	public String getDocumentType() {
		return this.documentType;
	}

	public CustomBigInteger getApprovalLineNo() {
		return this.approvalLineNo;
	}

	public String getApprovalStatus() {
		return this.approvalStatus;
	}

	public CustomSqlDate getApprovalCompleteDate() {
		return this.approvalCompleteDate;
	}

	public String getApprovalRemarks() {
		return this.approvalRemarks;
	}

	public String getApprovalDcInd() {
		return this.approvalDcInd;
	}

	public CustomSqlDate getApprovalDcDate() {
		return this.approvalDcDate;
	}

	public String getCreateUser() {
		return this.createUser;
	}

	public Timestamp getCreateDate() {
		return this.createDate;
	}

	public String getUpdateUser() {
		return this.updateUser;
	}

	public Timestamp getUpdateDate() {
		return this.updateDate;
	}

	public void setCompanyCode(String companyCode) {
		this.companyCode = companyCode;
	}

	public void setDocumentNo(String documentNo) {
		this.documentNo = documentNo;
	}

	public void setDocumentType(String documentType) {
		this.documentType = documentType;
	}

	public void setApprovalLineNo(CustomBigInteger approvalLineNo) {
		this.approvalLineNo = approvalLineNo;
	}

	public void setApprovalStatus(String approvalStatus) {
		this.approvalStatus = approvalStatus;
	}

	public void setApprovalCompleteDate(CustomSqlDate approvalCompleteDate) {
		this.approvalCompleteDate = approvalCompleteDate;
	}

	public void setApprovalRemarks(String approvalRemarks) {
		this.approvalRemarks = approvalRemarks;
	}

	public void setApprovalDcInd(String approvalDcInd) {
		this.approvalDcInd = approvalDcInd;
	}

	public void setApprovalDcDate(CustomSqlDate approvalDcDate) {
		this.approvalDcDate = approvalDcDate;
	}

	public void setCreateUser(String createUser) {
		this.createUser = createUser;
	}

	public void setCreateDate(Timestamp createDate) {
		this.createDate = createDate;
	}

	public void setUpdateUser(String updateUser) {
		this.updateUser = updateUser;
	}

	public void setUpdateDate(Timestamp updateDate) {
		this.updateDate = updateDate;
	}

    public CustomBigInteger getApprovalTaskLineNo() {
        return approvalTaskLineNo;
    }

    public void setApprovalTaskLineNo(CustomBigInteger lineNo) {
        this.approvalTaskLineNo = lineNo;
    }

	////////////////////////////////////////////////////////////////////////////////
	//Other Accessors (get/set methods)
	////////////////////////////////////////////////////////////////////////////////

}